//
// Created by Arikes on 9/19/21.
// 建造者模式

#ifndef DESIGNERMODE_CONCRETEBUILDER_H
#define DESIGNERMODE_CONCRETEBUILDER_H

#include "Builder.h"
namespace BuildMode{
    class ConcreteBuilder:public Builder
    {
    public:
        ConcreteBuilder()
        {
            std::cout<<"ConcreteBuilder::ConcreteBuilder()"<<std::endl;
        }

        virtual void buildPartA()
        {
            _product.setPartA("ConcreteBuilder 建造 PartA");
        }

        virtual void buildPartB()
        {
            _product.setPartB("ConcreteBuilder 建造 PartB");
        }

        virtual void buildPartC()
        {
            _product.setPartC("ConcreteBuilder 建造 PartC");
        }
    private:

    };
}

#endif //DESIGNERMODE_CONCRETEBUILDER_H
